|
A Petri net (also known as a place/transition net or P/T net) is one of several mathematical modeling languages for the description of distributed systems. A Petri net is a directed bipartite graph, in which the nodes represent transitions (i.e. events that may occur, signified by bars) and places (i.e. conditions, signified by circles). The directed arcs describe which places are pre- and/or postconditions for which transitions (signified by arrows). Some sources state that Petri nets were invented in August 1939 by Carl Adam Petri — at the age of 13 — for the purpose of describing chemical processes. Like industry standards such as UML activity diagrams, BPMN and EPCs, Petri nets offer a graphical notation for stepwise processes that include choice, iteration, and concurrent execution. Unlike these standards, Petri nets have an exact mathematical definition of their execution semantics, with a well-developed mathematical theory for process analysis. == Petri net basics == A Petri net consists of ''places'', ''transitions'', and ''arcs''. Arcs run from a place to a transition or vice versa, never between places or between transitions. The places from which an arc runs to a transition are called the ''input places'' of the transition; the places to which arcs run from a transition are called the ''output places'' of the transition. Graphically, places in a Petri net may contain a discrete number of marks called ''tokens''. Any distribution of tokens over the places will represent a configuration of the net called a ''marking''. In an abstract sense relating to a Petri net diagram, a transition of a Petri net may ''fire'' if it is ''enabled'', ''i.e.'' there are sufficient tokens in all of its input places; when the transition fires, it consumes the required input tokens, and creates tokens in its output places. A firing is atomic, i.e., a single non-interruptible step. Unless an ''execution policy'' is defined, the execution of Petri nets is nondeterministic: when multiple transitions are enabled at the same time, any one of them may fire. Since firing is nondeterministic, and multiple tokens may be present anywhere in the net (even in the same place), Petri nets are well suited for modeling the concurrent behavior of distributed systems. 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「Petri net」の詳細全文を読む スポンサード リンク
|